/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Dao;

import Beans.CompraBean;
import Conexion.Conexion;
import java.sql.ResultSet;
import java.util.Vector;

/**
 *
 * @author orellana
 */
public class CompraDAO {

    //Atributos de la clase
    public static final String INSERT_DATOS_COMPRA="INSERT INTO cat_orden_compras (idEstatus,idProveedor,noFactura,noRecibo,descuentoOrden,subtotalOrden,ivaOrden,totalOrden,pagoContado,pagoCredito,noCheque,idBanco,fechaCaptura,idEstado) VALUES ";
    public static final String GET_NEXT_ID_COMPRA="SELECT auto_increment FROM information_schema.tables WHERE table_schema='bd_pegaso' AND table_name='cat_orden_compras';";

    // Metodos Publicos
    // Insertamos los Datos dela compra
    public Vector insertaDatosCompra(CompraBean compraBean, Conexion conect){
        // Variables Locales
        Vector resultDatos=new Vector();

        // Insertamos los Datos dela compra
        try {
            conect.getPreparedStatement().execute(INSERT_DATOS_COMPRA +
                    "(" + compraBean.getIdEstatus() +
                    "," + compraBean.getIdProveedor() +
//                    ",'" + compraBean.getFechaCaptura() + "'" +
//                    ",'" + compraBean.getFechaCompletada() + "'" +
//                    ",'" + compraBean.getFechaModificacion() + "'" +
                    "," + compraBean.getNoFactura() + 
                    "," + compraBean.getNoRecibo() + 
                    "," + compraBean.getDescuentoOrden() + 
                    "," + compraBean.getSubtotalOrden() + 
                    "," + compraBean.getIvaOrden() +
                    "," + compraBean.getTotalOrden() +
                    "," + compraBean.getPagoContado() +
                    "," + compraBean.getPagoCredito() +
                    "," + compraBean.getNoCheque() +
                    "," + compraBean.getIdBanco() +
                    ",NOW()" +
                    ",1);");
            resultDatos.add("OK");
        } catch (Exception e) {
            resultDatos.add("ERROR");
            // Mensaje en Consola
            System.out.println("ERROR :" + e);
            System.out.println("ERROR :" + INSERT_DATOS_COMPRA +
                    "(" + compraBean.getIdEstatus() +
                    "," + compraBean.getIdProveedor() +
//                    ",'" + compraBean.getFechaCaptura() + "'" +
//                    ",'" + compraBean.getFechaCompletada() + "'" +
//                    ",'" + compraBean.getFechaModificacion() + "'" +
                    "," + compraBean.getNoFactura() + 
                    "," + compraBean.getNoRecibo() + 
                    "," + compraBean.getDescuentoOrden() + 
                    "," + compraBean.getSubtotalOrden() + 
                    "," + compraBean.getIvaOrden() +
                    "," + compraBean.getTotalOrden() +
                    "," + compraBean.getPagoContado() +
                    "," + compraBean.getPagoCredito() +
                    "," + compraBean.getNoCheque() +
                    "," + compraBean.getIdBanco() +
                    ",NOW()" +
                    ",1);");

        }
        // Retornamos el Valor
        return resultDatos;
    }

     // Obtenemos el Siguiente Id de Compra a Asignar
    public Vector getDatosComprasNextId(CompraBean compraBean, Conexion conect){
        // Variables Locales
        Vector resultDatos=new Vector();

        // Obtenemos el Siguiente Id Compra a Asignar
        try {
            ResultSet resultSet=conect.getPreparedStatement().executeQuery(GET_NEXT_ID_COMPRA);
            while(resultSet.next()){
                CompraBean getDatosCompras=new CompraBean();
                getDatosCompras.setIdOrdenCompra(resultSet.getString("auto_increment"));
                resultDatos.add(getDatosCompras);
            }
        } catch (Exception e) {
            // Mensaje en Consola
            System.out.println("ERROR :"+e);
        }
        // Retornamos el Valor
        return resultDatos;
    }


}
